home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d18 / vis082s.arc / XCONVERT.PAS < prev   
Pascal/Delphi Source File  |  1991-04-17  |  3KB  |  129 lines

  1. Program Emulex_to_Vision_Xfers_Convert;
  2.  
  3. Uses Configrt, Subs1, GenSubs, Gentypes, Crt;
  4.  
  5. Type EFrec=Record
  6.        sentby:mstr;
  7.        when,whenrated:longint;
  8.        filename:sstr;
  9.        path:String[50];
  10.        points:Integer;
  11.        FileSize:longint;
  12.        descrip:lstr;
  13.        downloaded:Integer;
  14.        pass:sstr;
  15.        unused:string[13];
  16.        revision:byte;
  17.        newfile,specialfile:Boolean
  18.      End;
  19.  
  20.      EArec=Record
  21.        name,xmodemdir:lstr;
  22.        sponsor:mstr;
  23.        Password:sstr;
  24.        UploadHere,downloadhere:char;
  25.        unused:string[61];
  26.        slowdrive:boolean;
  27.        File_List:lstr;
  28.        Area_Type:Char;
  29.        level:Integer
  30.      End;
  31.  
  32. Var Areas:Integer;
  33.  
  34. Procedure AreaConvert;
  35. Var EFile:File of EARec;
  36.     AFile:File of AreaRec;
  37.     EA:EARec;
  38.     A:AreaRec;
  39. Begin
  40.   Assign (EFile,'AREADIR');
  41.   Reset (EFile);
  42.   If IOResult <> 0 Then Begin
  43.     TextAttr:=9;
  44.     Writeln ('AREADIR Not Found!');
  45.     Halt;
  46.   End;
  47.   Rename (EFile,'AREADIR.EMU');
  48.   Assign (AFile,'AREADIR');
  49.   Rewrite (AFile);
  50.   Seek (EFile,0);
  51.   Areas:=0;
  52.   While Not Eof(Afile) Do Begin
  53.     Areas:=Areas + 1;
  54.     Read (EFile,EA);
  55.     FillChar (A,Sizeof(A),0);
  56.     A.Name:=EA.Name;
  57.     A.XmodemDir:=EA.XmodemDir;
  58.     A.Sponsor:=EA.Sponsor;
  59.     A.Pass:=EA.Password;
  60.     A.UploadHere:=Upcase(EA.UploadHere) = 'Y';
  61.     A.DownloadHere:=Upcase(EA.DownloadHere) = 'Y';
  62.     A.Level:=EA.Level;
  63.     Write (AFile,A);
  64.   End;
  65.   TextAttr:=7;
  66.   Writeln ('Xfer Area List Converter Done!');
  67.   Close (EFile);
  68.   Close (AFile);
  69. End;
  70.  
  71. Procedure FilesConvert;
  72. Var EFile:File of EFRec;
  73.     UFile:File of UDRec;
  74.     EF:EFRec;
  75.     UD:UDRec;
  76.     Cnt:Integer;
  77. Begin
  78.   If Areas < 1 Then Begin
  79.     Writeln ('No Transfer Areas to Convert!');
  80.     Halt;
  81.   End;
  82.   For Cnt:=1 to Areas Do Begin
  83.     Assign (EFile,'AREA'+Strr(Cnt));
  84.     Reset (EFile);
  85.     If IOResult <> 0 Then
  86.      Writeln ('Area '+Strr(Cnt)+' Not Found!') Else Begin
  87.        Rename (EFile,'AREA'+Strr(Cnt)+'.EMU');
  88.        Assign (UFile,'AREA');
  89.        Rewrite (UFile);
  90.        FillChar (UD,Sizeof(UD),0);
  91.        While not Eof (EFile) Do Begin
  92.          Read (EFile,EF);
  93.          UD.Sentby:=EF.Sentby;
  94.          UD.When:=EF.When;
  95.          UD.WhenRated:=EF.WhenRated;
  96.          UD.FileName:=EF.Filename;
  97.          UD.Path:=EF.Path;
  98.          UD.Points:=EF.Points;
  99.          UD.FileSize:=EF.FileSize;
  100.          UD.Descrip:=EF.Descrip;
  101.          UD.Downloaded:=EF.Downloaded;
  102.          UD.SpecialFile:=EF.SpecialFile;
  103.        End;
  104.        Close (EFile);
  105.        Close (UFile);
  106.      End;
  107.   End;
  108. End;
  109.  
  110. Var K:Char;
  111. Begin
  112.   ClrScr;
  113.   TextAttr:=9;
  114.   Writeln (#13#10#13#10'File Transfer Converter!');
  115.   Writeln ('From Emulex/2 to ViSiON');
  116.   TextAttr:=12; Writeln ('Written by: The Elemental');
  117.   Writeln;
  118.   Repeat
  119.    Write ('Run Conversion? ');
  120.    K:=Upcase(ReadKey);
  121.    Writeln;
  122.   Until K in [#13,'Y','N'];
  123.   If K <> 'Y' Then Exit;
  124.   AreaConvert;
  125.   FilesConvert;
  126. End.
  127.  
  128.  
  129.